import UIKit

//
@available(iOS 13.0, *)
extension QKC where AA :UISceneConfiguration {
    open func name_qk_g() -> QKC<AA,YY,ZZ, String? >{
		 self +^ self.value.name
	}

    open func role_qk_g() -> QKC<AA,YY,ZZ, UISceneSession.Role >{
		 self +^ self.value.role
	}

    open func sceneClass_qk_s(_ sceneClass:  AnyClass?) -> QKC<AA,YY,ZZ, AnyClass?>{
		return link(next: sceneClass).then_QK { $0.value.sceneClass = sceneClass }
	}
    open func sceneClass_qk_g() -> QKC<AA,YY,ZZ, AnyClass?>{
		 self +^ self.value.sceneClass
	}

    open func delegateClass_qk_s(_ delegateClass:  AnyClass?) -> QKC<AA,YY,ZZ, AnyClass?>{
		return link(next: delegateClass).then_QK { $0.value.delegateClass = delegateClass }
	}
    open func delegateClass_qk_g() -> QKC<AA,YY,ZZ, AnyClass?>{
		 self +^ self.value.delegateClass
	}

    open func storyboard_qk_s(_ storyboard:  UIStoryboard?) -> QKC<AA,YY,ZZ, UIStoryboard?>{
		return link(next: storyboard).then_QK { $0.value.storyboard = storyboard }
	}
    open func storyboard_qk_g() -> QKC<AA,YY,ZZ, UIStoryboard?>{
		 self +^ self.value.storyboard
	}

}

@available(iOS 13.0, *)
extension QKC where AA :UISceneSession {
	// If already instantiated, the UIScene instance that is represented by this definition.
    open func scene_qk_g() -> QKC<AA,YY,ZZ, UIScene? >{
		 self +^ self.value.scene
	}

    open func role_qk_g() -> QKC<AA,YY,ZZ, UISceneSession.Role >{
		 self +^ self.value.role
	}

     open func configuration_qk_g() -> QKC<AA,YY,ZZ, UISceneConfiguration >{
		 self +^ self.value.configuration
	}

    open func persistentIdentifier_qk_g() -> QKC<AA,YY,ZZ, String >{
		 self +^ self.value.persistentIdentifier
	}

	// is connected, depending on the app's default protection class and the lock state of the device.
    open func stateRestorationActivity_qk_s(_ stateRestorationActivity:  NSUserActivity?) -> QKC<AA,YY,ZZ, NSUserActivity?>{
		return link(next: stateRestorationActivity).then_QK { $0.value.stateRestorationActivity = stateRestorationActivity }
	}
    open func stateRestorationActivity_qk_g() -> QKC<AA,YY,ZZ, NSUserActivity?>{
		 self +^ self.value.stateRestorationActivity
	}

	// objects must be plist types
    open func userInfo_qk_s(_ userInfo:  [String : Any]?) -> QKC<AA,YY,ZZ, [String : Any]?>{
		return link(next: userInfo).then_QK { $0.value.userInfo = userInfo }
	}
    open func userInfo_qk_g() -> QKC<AA,YY,ZZ, [String : Any]?>{
		 self +^ self.value.userInfo
	}

}

